/*
 * VCRStateAdapter.java
 *
 * Created on January 6, 2006, 9:24 AM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package org.mbari.vcr;

import org.mbari.util.IObserver;
import org.mbari.util.ObservableSupport;

/**
 *
 * @author brian
 */
public class VCRStateAdapter implements IVCRState {
    
    /**
	 * @uml.property  name="os"
	 * @uml.associationEnd  multiplicity="(1 1)"
	 */
    private ObservableSupport os = new ObservableSupport();
    
    /** Creates a new instance of VCRStateAdapter */
    public VCRStateAdapter() {
    }

    public boolean isBadCommunication() {
        return false;
    }

    public boolean isCueingUp() {
        return false;
    }

    public boolean isFastForwarding() {
        return false;
    }

    public boolean isHardwareError() {
        return false;
    }

    public boolean isJogging() {
        return false;
    }

    public boolean isLocal() {
        return false;
    }

    public boolean isPlaying() {
        return false;
    }

    public boolean isRecording() {
        return false;
    }

    public boolean isReverseDirection() {
        return false;
    }

    public boolean isRewinding() {
        return false;
    }

    public boolean isServoLock() {
        return false;
    }

    public boolean isServoRef() {
        return false;
    }

    public boolean isShuttling() {
        return false;
    }

    public boolean isStandingBy() {
        return false;
    }

    public boolean isStill() {
        return false;
    }

    public boolean isStopped() {
        return false;
    }

    public boolean isTapeEnd() {
        return false;
    }

    public boolean isTapeTrouble() {
        return false;
    }

    public boolean isTso() {
        return false;
    }

    public boolean isUnthreaded() {
        return false;
    }

    public boolean isVarSpeed() {
        return false;
    }

    public void addObserver(IObserver observer) {
        os.add(observer);
    }

    public void removeAllObservers() {
        os.clear();
    }

    public void removeObserver(IObserver observer) {
        os.remove(observer);
    }
    
    /** Notifies all the observers of a chage of state */
    protected void notifyObservers() {
        os.notify(this, null);
    }

    public boolean isConnected() {
        return false;
    }
    
}
